template<typename T>
BinNodePosi(T) BinNode<T>::succ() {
	BinNodePosi(T) successor = this;
	if(rc) {
		successor = rc;
		while(HasLChild(*successor)) {
			successor = successor->lc;
		}
	}
	else {
		while(IsRChild(*successor)) {
			successor = successor->parent;
		}
		successor = successor->parent;
	}
	return successor;
}